A time-of-flight (ToF) depth camera projects infrared radiation onto a scene. It then uses a sensor to detect the infrared radiation that is reflected from the scene, to provide a plurality of sensor readings. A processing component converts the sensor readings into depth values that collectively constitute a depth image. Ideally, each sensor element of the sensor, associated with a pixel, measures the distance between the depth camera and a single point in the scene. The processing component may thereafter leverage the depth image to perform some context-specific task, such as providing a mixed-reality experience, controlling the navigation of a vehicle, producing a three-dimensional reconstruction of the scene, etc.
The depth image may suffer from artifacts due to various factors, such as motion blur and multipath interference. Motion blur occurs when the depth camera and/or objects in the environment quickly move while the depth camera is performing exposure of its sensor. Due to such a phenomenon, the depth camera's sensor may produce conflicting depth-related information regarding a particular point in the environment, e.g., by interpreting the point as part of the foreground at the beginning of a reading and interpreting the point as part of the background at the end of the reading. Multipath interference occurs when the depth camera's sensor receives infrared radiation that represents the contribution of several different radiation paths having different respective travel times and associated depths. The sensor may produce a faulty depth reading due to the contribution of these different paths.